home *** CD-ROM | disk | FTP | other *** search
- - The version number has been changed to 1.7.
-
- - The exit code of elvis is now 1 if the file wasn't updated, 0 if it was
- updated, or some other value for errors. This was done because some
- versions of crontab apparently are sensitive to the exit status.
-
- (Note: version 1.6 got this backwards)
-
- - In version 1.6, giving the command "=}" would cause a core dump if you
- were at the last paragraph, and there was no blank line after it. This
- bug has been fixed.
-
- - The :ks=:ke=: termcap strings are supported again. Support for those
- strings was removed from 1.6, but that appears to have been a mistake.
-
- - In autoindent mode, if you insert a newline in front of whitespace, that
- whitespace is deleted before the automatic indent is inserted. This
- makes elvis' autoindent act more like vi's autoindent.
-
- - Elvis will complain & exit if you try to load a too-large file. Earlier
- versions of elvis would crash if you did this.
-
- Also, if the text grows too large during editing, you will receive warnings.
- If you ignore the warnings, then elvis will eventually preserve the text and
- then exit. THIS IS NOT 100% BULLET PROOF.
-
- - The "elvprsv" program will now refuse to preserve a zero-length file.
-
- - "make install" has been improved for UNIX and MS-DOS systems.
-
- For UNIX systems, it will try to install the man-pages automatically
- (though this is known NOT to work for Minix and Coherent), and it will
- create the /usr/preserve directory if necessary. For systems which use
- a /etc/rc2.d directory, it will also install a script that runs elvprsv
- when the system is rebooted; for others, you still need to modify /etc/rc
- by hand.
-
- For MS-DOS, it will create the C:\TMP and C:\PRESERVE directories, if
- necessary. You still need to modify AUTOEXEC.BAT manually.
-
- - The -DS5WINSIZE option has vanished, and -DNO_S5WINSIZE has been added.
- This way, under SysV elvis will now try to include window-resizing code
- by default; if your SysV doesn't support winsize then you'll learn about
- it pretty quick! -DNO_S5WINSIZE will allow elvis to be compiled on SysV
- systems which lack winsize support.
-
- - The ":color" command should work under Coherent now. (Coherent doesn't
- allow ANSI `SGR' escape sequences to be combined. So where everybody else
- is happy with "\E[1;37;43m", Coherent needs "\E[1m\E[37m\E[43m".)
-
- - Earlier versions of elvis would leave the text colors set to white-on-black
- after you exit it, even if you never used the :color command. Elvis 1.7
- will leave the text colors set to white-on-black only if you've used the
- :color command. So, if you're using some other command to set your text
- color scheme, elvis won't interfere with it.
-
- Sadly, there is no standard way for elvis to find out which colors the
- screen is using when elvis is started... so, if you use elvis' :color
- command to change the colors, elvis won't know which colors it should
- revert to upon exiting. That is why elvis leaves the screen in
- white-on-black mode.
-
- - Tag-stacks have been added! Muchos gracias a Periklis Beligrano. Tag stacks can
- be disabled by adding -DNO_TAGSTACK to CFLAGS.
-
- For the uninitiated: Every time you lookup a tag, the file & position
- where you came from is saved on a stack. You can return to that previous
- position via ^T or :pop.
-
- NOTE: I altered his patches somewhat. If there are bugs, blame me.
-
- - A bug has been fix. If you were in input mode, and started visibly marking
- text, and then tried to do some other ^O command, elvis would get stuck.
- (When elvis is in input mode, ^O can be used as a prefix to allow *SOME*
- visual commands to be given. For example, ^Oj moves down a line and still
- leaves you in input mode.)
-
- - Also in input mode, ^Ol on a blank line would leave elvis rather confused.
- This has been fixed.
-
- - Unknown ":set" options, or unsupported ":color" commands, won't generate
- error messages anymore when run from the .exrc file. When interactively
- run, they will generate error messages.
-
- - The "ref" program will now tell you which source file it is looking in.
- Also, it won't try to show argument lines for macros; it knows that they
- don't have any.
-
- When "ref" is supposed to be used for tag lookup (i.e., not -DINTERNAL_TAGS),
- and the "ref" program can't be executed for some reason, elvis will now
- give a more meaningful error message than just "tag not found".
-
- Also, its usage message no longer says there is a "-a" option. There is no
- "-a" option, and hasn't been for a long time.
-
- - Since version 1.5, the name of the temp file has been derived partially
- from elvis' process ID. This has caused name clashes when several different
- elvis processes have the same process ID. This happens often when running
- multi-tasking DOS, since each virtual machine has its own set of process
- IDs. It can also happen on a network, even under UNIX.
-
- Elvis 1.7 avoids this sort of name clash. When it wants to create a
- temp file, it first looks to see whether there is already a file with the
- name it would like to use; if so, it chooses another name.
-
- - When typing a command line or search pattern on the bottom line, ^U will
- backspace over all characters typed so far. (However, ^W does not yet
- backspace over the last word typed.)
-
- Also, <Esc> now acts like <Return> when entering an ex command. Vi has
- always done this. I don't like vi's behaviour, but some macro packages
- depend on it, so there it is.
-
- - In Makefile.mix, Coherent 3.x and Coherent 4.0 now have separate sets of
- suggested settings.
-
- The Coherent 4.0 settings are written with the assumption that VMIN/VTIME
- work correctly, but in the original 4.0 release they don't work. If you
- have Coherent 4.0, try compiling with settings from the file. If that
- doesn't work, then edit unix.c, go to line 112, and delete "|| COH_386".
-
- If VMIN/VTIME works, elvis can use it to recognize the <Esc> key in a
- fraction of a second, instead of the 1~2 second delay that Coherent 3.x
- imposes.
-
- - A new section has been added to the manual. It describes Makefile.mix
- and all of its configuration macros.
-
- - If you attempt to quit elvis when there are still more files to be edited,
- then FIRST save your text (if appropriate) and SECOND inform you that there
- are more files. The real vi does it this way, but earlier versions of elvis
- did those two steps the other way around.
-
- - Under MS-DOS or Atari TOS, if the "HOME" environment variable isn't set then
- elvis will assume that the home directory is the one which contains the
- ELVIS.EXE (or ELVIS.TTP) executable.
-
- - In 1.6 (the previous version) I tried to protect elvis against terminals
- whose left-arrow key sends a backspace; if '\b' is mapped to 'h', as left
- arrow codes usually are, then you would have no way to backspace.
-
- Unfortunately I did it wrong. I protected elvis against the *RIGHT* arrow
- sending '\b' instead of the left arrow. This time I got it right!
-
- - The behaviour of the (, ), { and } commands is improved. Specifically,
- ( and ) stop at paragraph boundaries, and { and } stop at section boundaries.
- I'm still now quite satisfied, though.
-
- - The 't' and 'T' character search commands are more vi-like. You give the
- command "th" when the cursor is already adjacent to an 'h', then the cursor
- will not move. (Earlier versions of elvis would skip the adjacent 'h' and
- look for one after that.)
-
- - A serious bug has been fixed in the mapping, which prevented ":set remap"
- from working.
-